package com.service.yzj.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import com.service.yzj.model.basic.ImageItem;
import com.service.yzj.model.product.ProductBasicInfo;
import com.service.yzj.model.product.ProductPkg;
import com.service.yzj.model.product.ProductTag;

@Mapper
public interface CProductMapper {
    // 查询产品列表
    List<ProductBasicInfo> getProductBaseInfo();
    List<ProductBasicInfo> getProductBaseInfoWithId(long productId);
    List<ProductBasicInfo> getProductsWithKeyword(int offset, int pageSize, String cityCode, String keyword);
    int getProductsWithKeywordTotalCount(String cityCode, String keyword);
    // 通过订单，查询产品列表
    List<ProductBasicInfo> getProductListByOrderId(long orderId);
    // 通过订单ID和产品ID，查询订单下对应产品的套餐信息
    ProductPkg getSelectedPkgByOrderId(long orderId, long productId);

    // 查询产品对应的package列表
    List<ProductPkg> getProductPackageInfo(long productId);

    // 查询产品对应的Tag列表
    List<ProductTag> getProductTagInfo(long productId);

    // 查询产品对应的image列表
    // type 1:产品预览图片 2:产品Banner图片 3:产品详情图片
    List<ImageItem> getProductImageInfo(long productId, int type);
}
